
My site, with other editors, programs, Game Genie codes, etc...
https://codehut.gshi.org/
http://www.angelfire.com/games2/codehut/

t_hedstrom@yahoo.com

Info and instructions for this program...

This program tries to find tables in ROMs and ISO type files.  It can find tables for weapon/item prices, weapon damage amounts, enemy HP amounts, etc.  As long as you know the value of something in the game and you have a way of checking in the game to see if it has changed, then this program will try and find it.

If your game won't run after making changes with this program, click on the 'Starting address info' button to see how to fix that.  Keep in mind that the program always makes a intact backup copy of your original file, so it's always safe.

In short, this is what the program does: When you click on the 'Find matches' button, It searches for any occurrence of the value you entered and displays all of the ROM/ISO addresses that it found.  When you click on 'Patch', it goes to the 1st ROM address it found and writes a value of 01, then it goes to the 2nd address it found and writes a value of 02, 3rd address is 03, and so on.  Let's say you entered a value of 1200 because you wanted to change the price of a $1200 sword in an RPG game.  Once you use the program like I explained above, you simply play the newly created (renamed) ROM/ISO and go into the shop where they sell the $1200 sword and see if the price has changed.  If the price is now $3, you know that the 3rd ROM address is the correct one.  If the price of the sword is now $17, you know it's the 17th ROM address that changed that value, and so on.  This is an old school method I used to use with a hex editor to find tables, and thought it would be fun to make a program that automates most of the process.

Obviouly, you'll probably want to make an in-game save nearby the shop where the item you are checking is for sale (or whatever it is you're trying to find the table for).

IMPORTANT!: DO NOT use emulator save states for disc based systems (PS1, PS2, GC, Wii, etc).  For these systems, you'll need to use an in-game save file.  Systems like the Genesis can use either an in-game save file or an emulator save state.  I think the N64 must also use an in-game save file.

====================
Instructions:
====================

Instructions: Let's say that you want to find the table for the cost of a $1200 Sword in a shop.  You just open your ROM/ISO, pick the correct type of searching (2 or 4 bytes, and big or little endian), choose the best address to start searching at, and enter 1200 in the value box.  There are additional info buttons to help with endianess and 2/4 byte searching, and how to choose which address to start searching at.  Once you have search type, starting address, and value selected, just click on the 'Find matches' button and it will start searching for matches.  If it finds any matches, it will display all of the potential addresses in one of the text boxes.  Next, click on the 'Patch' button to patch all of those addresses with a unique number.  If you want to save that list of addresses and unique numbers to a text file, just click on the Dump address' button.  Once you have patched your file, you will have a new copy of your ROM/ISO that you will use to figure out which (if any) address is the correct one.  Make sure you use the newly renamed ROM/ISO file to play (don't use the original unmodified ROM/ISO).  Go into the shop where they sell that $1200 Sword, and see if it's price has changed.  If the price is now $4, you know that it was the 4th address that is the correct address for the table.  If the price is $12, you know that it was the 12th address, and so on.  Just look at the address list in the program, or in the text file if you clicked on the 'Dump' button.  You can go to that address in a hex editor in your ROM/ISO file and change the value (in hex) to whatever value you want (if you want the sword for free, just set the value to zero).  If the price hasn't changed, try buying the item and make sure the amount that's subtracted from your money matches the actual price (some games use separate values for the price and the price that's displayed).  If the price truely hasn't changed, and you had less than 20 matches, then it may not be able to find your table.  If you had 20 or more matches, then you can try using a different value until you get less than 20 matches.  Usually, bigger values will get fewer matches, so try to search for the most expensive item in the game.

As you can probably tell, the program changes the value at the 1st address to 01, the 2nd address to 02, the 3rd address to 03, and so on.

Obviouly, you'll probably want to make an in-game save nearby the shop where the item you are checking is for sale (or whatever it is you're trying to find the table for).

IMPORTANT!: DO NOT use emulator save states for disc based systems (PS1, PS2, GC, Wii, etc).  For these systems, you'll need to use an in-game save file.  Systems like the Genesis can use either an in-game save file or an emulator save state.  I think the N64 must also use an in-game save file, but not sure.

